#import <Foundation/Foundation.h>
#import <LayerKit/LayerKit.h>
#import <UIKit/UIAlertSheet.h>
#import <UIKit/UIKit.h>
#import <UIKit/UIView-Geometry.h>
#import <UIKit/UIImageAndTextTableCell.h>
#import <UIKit/UIApplication.h>
#import <UIKit/UIWindow.h>
#import <UIKit/UIView.h>
#import <UIKit/UIView-Hierarchy.h>
#import <UIKit/UIView-UIImageViewImplementation.h>
#import <UIKit/UIButtonBar.h>
#import <UIKit/UINavigationBar.h>
#import <UIKit/UINavBarButton.h>
#import <UIKit/UINavigationBarBackground.h>
#import <UIKit/UINavigationItem.h>
#import <UIKit/UIPreferencesTable.h>
#import <UIKit/UIPreferencesTableCell.h>
#import <UIKit/UITable.h>
#import <UIKit/UITableCell.h>
#import <UIKit/UITableColumn.h>
#import <UIKit/UISegmentedControl.h>
#import <UIKit/UIPreferencesTextTableCell.h>
#import <UIKit/UIPreferencesControlTableCell.h>
#import <UIKit/UIPreferencesDeleteTableCell.h>
#import <UIKit/UISwitchControl.h>
#import <UIKit/UITransformAnimation.h>
#import <UIKit/UIKeyboard.h>
#import <UIKit/UIAnimator.h>
#import <UIKit/UIPushButton.h>
#import <UIKit/CDStructures.h>
#import <UIKit/UITextField.h>
#import <UIKit/UITransitionView.h>
#import <CoreGraphics/CoreGraphics.h>
#import <GraphicsServices/GraphicsServices.h>
#import <WebCore/WebFontCache.h>
#import "ChordsApplication.h"
#import "ChordString.h"

@class ChordsApplication;
@class ChordString;

@interface FretBoardView : UIView
{
	UIView *mainView;
	ChordsApplication *app;
	ChordString *currentChord;
	NSArray *chord;
	NSArray *mode;
	NSArray *position;	
	NSMutableArray *chordButtons;
	NSMutableArray *modeButtons;
	NSMutableArray *dotImages;
	NSMutableArray *fretText;
	NSArray *chordPositions;
	
	NSDictionary *notationDict;
	NSString *notation;

	
	UIImageView *strings;
	
	UIImage *btnImageChord;
	UIImage *btnImageMode;
	UIImage *buttonImagePressed;
	UIImage *btnImageSelected;

	UIImage *btnImageStroke;
	UIImage *btnImageNoStroke;
	
	UIImage *btnImagePrev;
	UIImage *btnImageNext;
	UIImage *btnImagePrevPressed;
	UIImage *btnImageNextPressed;
	UIImage *btnImageRecPressed;
	
	UIImage *btnImagePlay;
	UIImage *btnImagePlayPressed;

	UIPushButton  *label;
	// UIPushButton  *scales;

	UIPushButton *prev;
	UIPushButton *next;
	
	UIPushButton *play;

	int selectedChord;
	int selectedMode;
	int selectedPosition;
	
	int numChordPositions;
	int fromStatePosition;

}

- (id)initWithFrame:(struct CGRect)frame;
- (void)drawChord;
- (void)drawDots:(NSString *)position;
- (void)changeNotation;
- (int)getSelectedChord;
- (int)getSelectedMode;
- (int)getSelectedPosition;
- (NSString*)getSelectedNotation;

// DELEGATE METHODS
- (void)chordButtonsPressed:(UIPushButton *)button;
- (void)modeButtonsPressed:(UIPushButton *)button;
- (void)prevButtonPressed:(UIPushButton *)button;
- (void)nextButtonPressed:(UIPushButton *)button;
- (void)playButtonPressed:(UIPushButton *)button;

@end
